Predictive statistical models are built based on the prior observations of the variable that the model is supposed to predict. The variable is called the output variable. The known data about observation is called the set of input variables; these variables are used as an input to the model when it is developed. Traditional methods for developing predictive statistical models, including logistic regression, neural network, radial basis function and others, can only accept input as an array of scalar numbers. For example, a model that predicts customer response to a marketing offer has a probability to respond as an output variable and may have age, income, marital status and gender as input variables.
However, in the real world, information about a customer is not limited to the array of scalar values. In addition to the above-mentioned input variables, transactional data such as a customer purchase history may be available to a modeler. The purchase history is a set of records that may include, for example, date of the purchase, dollar amount and category of a product purchased. Each customer may have one or several records in the purchase history or no records at all. The number of records varies from customer to customer. Moreover, there may be several transactional sources of data available simultaneously. For example, in addition to the purchase history, coupon usage history may include date, coupon type and coupon amount.
The importance of transactional data has greatly increased over the last several years with the invention of the Internet. Each web site typically collects a log that records customer visits to a web site, advertisements seen, and responses to these advertisements. The amount of this valuable marketing information is enormous and it is highly desirable to utilize it.
Traditional modeling methods cannot use transactional information directly. Instead, if the transactional data is available, it is a responsibility of the modeler to aggregate this data first. That means that modeler must derive a set of scalar variables from each transactional source of data. In case of purchase history it may be total number of purchases and average amount of a purchase. Data aggregation is a manual, time-consuming and arbitrary process. There is no known scientific method that tells a modeler what exactly the attributes should be derived. In the above-mentioned example, the number of purchases in the last 6 months may be a better predictor than the total number of purchases. A modeler therefore must use intuition and experience to decide what attributes to derive. Since the process is manual, it is usually very time-consuming. Also, a simple human error can nullify all the further efforts of developing the model. Another drawback of traditional method is that when transactional information is updated the whole process of aggregation needs to be repeated.
What would be really be useful is a method of developing a model that can accept several transactional sources of data directly, without requiring a manual aggregation step and that can provide an efficient way to handle updated transactional data.